package reflect;

import java.lang.reflect.Method;

public class reflectDemo5 {
    public static void main(String[] args) throws Exception {
        Person p = new Person();
        p.say("大家好~");

        Class cls = Class.forName("reflect.Person");
        Object o = cls.newInstance();
        //获取方法时，参数2开始是该方法的参数列表
        Method say = cls.getMethod("say", String.class);
        //调用方法时，参数2开始为该方法的实参
        say.invoke(o,"天气正好");

        //获取指定类中的指定参数格式的方法 类对象.getMethod(方法名，参数1，参数2，参数3)
        say = cls.getMethod("say", String.class,int.class);
        //调用方法时，参数2开始为该方法的实参
        say.invoke(o,"天气正好aaaaaa",10);
    }
}
